package com.ubxtech.mqtt.service;

import java.util.List;

/**
 * @author Victor.Xiao
 * @since 2022-03-30 10:49
 **/
public interface EmqTopicManager {

    /**
     * 添加主题,默认第一个客户端
     * @author Victor.Xiao
     * @since 2022-03-31 11:23
     * @param topic topic
    */
    void addListenTopic(String topic);
    /**
     * 添加主题,默认第一个客户端
     * @author Victor.Xiao
     * @since 2022-03-31 11:23
     * @param topic topic
     * @param qos qos
    */
    void addListenTopic(String topic,int qos);

    /**
     * 移除主题,默认第一个客户端
     * @author Victor.Xiao
     * @since 2022-03-31 11:22
     * @param topic topic
    */
    void removeListenTopic(String topic);

    /**
     * 查询主题,默认第一个客户端
     * @author Victor.Xiao
     * @since 2022-03-31 11:22
     * @return java.util.List<java.lang.String>
    */
    List<String> getTopicList();


    /**
     * 添加主题
     * @author Victor.Xiao
     * @since 2022-03-31 11:23
     * @param topic topic
     */
    void addListenTopic(String channel , String topic);
    /**
     * 添加主题
     * @author Victor.Xiao
     * @since 2022-03-31 11:23
     * @param topic topic
     * @param qos qos
     */
    void addListenTopic(String channel , String topic,int qos);

    /**
     * 移除主题
     * @author Victor.Xiao
     * @since 2022-03-31 11:22
     * @param topic topic
     */
    void removeListenTopic(String channel , String topic);

    /**
     * 查询主题
     * @author Victor.Xiao
     * @since 2022-03-31 11:22
     * @return java.util.List<java.lang.String>
     */
    List<String> getTopicList(String channel);
}
